package com.yssoft.mapper.inventory;

import com.yssoft.entity.inventory.TWarehouse;

import org.apache.ibatis.annotations.Param;

import tk.mybatis.mapper.common.Mapper;

import java.util.List;
import java.util.Map;

public interface TWarehouseMapper extends Mapper<TWarehouse> {

    /**
     * @param param
     * @return List<Map < String, Object>>
     * @方法名称: selectWarehouseByCId
     * @功能描述: 根据原料类型获取仓库
     * @作者: 洪丰
     * @创建时间:2018年5月9日 下午4:49:05
     */
    List<Map<String, Object>> selectWarehouseByCId(Map<String, Object> param);

    /**
     * @param param
     * @return List<Map < String, Object>>
     * @方法名称: selectSfgWarehouseByCId
     * @功能描述: 获取半成品仓库
     * @作者: 洪丰
     * @创建时间:2018年5月11日 下午4:14:34
     */
    List<Map<String, Object>> selectSfgWarehouseByCId(@Param("companyId") Integer param);

    /**
     * @param param
     * @return List<Map < String, Object>>
     * @方法名称: selectWarehouseList
     * @功能描述: 条件查询仓库列表
     * @作者: 王永宁
     * @创建时间:2018年5月9日 下午4:49:05
     */
    List<Map<String, Object>> selectWarehouseList(Map<String, Object> param);

    /**
     * 查询库存信息
     * @param id
     * @return List<Map < String, Object>>
     * @方法名称: queryPersonByWarehouseId
     * @功能描述: 根据仓库id查询库管员
     * @作者: 王永宁
     * @创建时间:2018年5月17日 上午9:09:05
     */
    List<Map<String, Object>> queryPersonByWarehouseId(Integer id);

    /**
     * @param wId
     * @param pId
     * @return List<Map < String, Object>>
     * @方法名称: saveWarehouseAndPerson
     * @功能描述: 保存仓库及管理员
     * @作者: 王永宁
     * @创建时间:2018年5月17日 上午11:09:05
     */
    void saveWarehouseAndPerson(Map<String, Object> param);

    /**
     * @param id
     * @功能描述: 根据仓库id清空管理员
     * @作者: 王永宁
     */
    void deletePersonForWarehouse(Integer id);

    /**
     * @param param
     * @return List<Map < String, Object>>
     * @方法名称: selectWarehouseList1
     * @功能描述: 条件查询仓库列表
     * @作者: 王永宁
     * @创建时间:2018年5月26日 下午2:49:05
     */
    List<Map<String, Object>> selectWarehouseList1(Map<String, Object> param);

    /**
     * @param param
     * @return List<Map < String, Object>>
     * @方法名称: selectWarehouseListck
     * @功能描述: 条件查询仓库列表ck
     * @作者: 王永宁
     * @创建时间:2018年5月26日 下午2:49:05
     */
    List<Map<String, Object>> selectWarehouseListck(Map<String, Object> param);

    /**
     * 查询仓库信息
     *
     * @param id
     * @return
     */
    Map<String, Object> queryWarehouseInfo(@Param("id") Integer id);

    /**
     * 查询不合格品仓库
     *
     * @param param
     * @return
     * @作者: 王永宁
     * @创建时间:2018年9月8日09:01:215
     */
    List<Map<String, Object>> selectNoWarehouseList(Map<String, Object> param);

}